1. Technical Field of the Invention
The present invention relates in general to screen mirroring systems, and in particular, to mirroring across wide area networks.
2. Description of Related Art
Screen mirroring systems enable a mobile device's screen to be simultaneously displayed in real-time on a monitor. For example, a user can mirror his/her mobile device's display to a nearby HDTV television set using a wired or wireless connection, so that photos, videos, and other electronic content displayed on the mobile device's screen are simultaneously displayed on the HDTV's large screen.
To facilitate screen mirroring in a home environment, a handheld mobile device, such as a tablet or smartphone, typically connects to the home's Internet router via WiFi. This WiFi connection transports the mirroring data. The router is also connected via one of its LAN ports to a digital media receiver (DMR) that can receive screen mirroring content, and the DMR subsequently outputs an HDMI video/audio stream to an audio/video-capable HMDI or HDTV monitor. A physical cable between the smartphone and DMR can also transport the mirroring data, instead of the WiFi connection.
Before screen mirroring can occur, the mobile device and DMR need to discover the existence of one another, preferably without the need for a person to manually configure and manage names, IP addresses and services descriptions in a centralized Domain Name System (DNS) server. For example, an IP multicast-based name and service query/broadcast mechanism, such as multicast Domain Name System (mDNS) can be used. In such an automatic plug-and-play environment, a newly-connected mobile device or DMR announces its name, IP address, and service capabilities via IP multicast across the local network. In addition, the newly-connected device also issues a multicast query, so that it discovers the names, IP addresses and capabilities of devices already connected to the local network. In this manner, all devices on the local network have a timely and up-to-date picture of all other devices on the local network.
Through this IP multicast mechanism, the mobile device might for example learn that there are two DMRs and two printers on the network, but would only offer-up the possibility for a user to select screen mirroring to either of the two DMR devices and not to the printers, since only the DMRs and not the printers advertised mirroring service capabilities. Once the user selects one of the two DMRs for mirroring, the mobile device subsequently sets up an IP unicast session to the DMR, using the IPV4 or IPV6 address also discovered during the IP multicast process.
Since most home networks are simple and flat, and have no routing (no NATting, etc.), this IP multicast-based plug-and-play mechanism works well. However, if the router is not multicast-capable or is not properly managed for propagating IP multicast information between the wireless and wired domains, end users can sometimes experience problems. In addition, currently, the mobile device and HDTV must be located physically nearby each other, due to electrical restrictions on cable length for wired mirroring, and due to network constraints relating to the IP multicast used in wireless mirroring. For example, even though two different homes may each be connected to the Internet, it is not currently possible to mirror a mobile device in the first home to the HDTV set in the second home, since IP multicast is not supported across the Internet.
Similar problems exist in corporate enterprise scenarios. For example, an enterprise worker in a conference room may be able to share the screen of his/her tablet with other colleagues using a large HDMI monitor, projector, or smartboard located in the same room. However, since most corporate networks do not enable multicast, that enterprise worker would not be able to share the screen of his/her tablet with colleagues in another conference room or location. In corporate environments, multicast traffic is typically entirely contained within a small domain and completely isolated from the corporate network. This is primarily due to the fact that not only does the multicast Doman Name System (mDNS) protocol not span multiple subnets, the mDNS protocol is a “chatty” protocol. Since each device multicasts announcements for the services it provides, and each device also multicasts queries for other available services, mDNS can generate significant volumes of corporate traffic.
Thus, although a WiFi router within a corporate conference room may be able to provide both multicast and unicast services locally, the WiFi router would only be able to provide unicast services across the wide-area corporate network. For example, a mobile device may still have access to resources on the corporate network via the WiFi router's WAN port. However, multicast messages would only be exchanged between local devices, and would be filtered before entering the wide area network (corporate LAN/WAN). In this manner, a mobile user connected to the conference room's WiFi router would only be able to share his/her screen with a large HDMI monitor, projector, or smartboard connected to the same WiFi router.
To provide screen mirroring throughout a corporation, a standard WiFi router can be deployed in each corporate conference room to enable a mobile user to mirror locally without impacting the corporate network. However, this architecture essentially consists of a series of islands that provide local, but not global, multicast connectivity.
Although local mirroring of a mobile device's screen to an HDTV monitor in the home or corporate setting can lead to satisfying consumer experiences, mirroring across longer distances via a wide-area network can be important and desirable in other applications, such as enterprise and business collaboration, public safety and first-responder medical situations and government, neighborhood or community scenarios. For example, an enterprise worker with a mobile device may want to collaborate and deliver a corporate viewgraph presentation to a group of other workers viewing a large screen in another location. As another example, a public safety or medical first-responder with a mobile device may need to collaborate and interact with experts in a remote location to show real-time maps or relay live video or sensor data.
Therefore, what is needed in these longer distance mirroring scenarios is a system and method for overcoming the IP multicast constraints intrinsic to the current implementation of wireless mirroring.